package net.jlibrary.invoice.service;

import com.alibaba.fastjson.JSONObject;

import net.jlibrary.common.core.service.IBaseManager;
import net.jlibrary.invoice.domain.ElectronicInvoiceKpInfo;
import net.jlibrary.invoice.domain.req.NotifyUrlReq;
import net.jlibrary.invoice.domain.resp.InvoiceDetail;
import net.jlibrary.invoice.domain.resp.NegativeInvoice;

public interface IElectronicInvoiceKpInfoManager extends IBaseManager {
	// 获得销货单位
	public JSONObject getInvoice(Long groupId);

	// 获得商品信息
	public JSONObject getGoods();

	// 通过订单id和销方企业id 获得开具发票
	public ElectronicInvoiceKpInfo electronicInvoiceKpInfo(String orderNo);
	// 通过fpdm和fphm 获得开具发票

	public ElectronicInvoiceKpInfo invoiceKpInfo(String fpdm, String fphm);

	// 查询发票接口对应的发票信息
	public ElectronicInvoiceKpInfo upKpInfo(ElectronicInvoiceKpInfo info, InvoiceDetail invoce);

	// 回调接口 对应的发票信息
	public ElectronicInvoiceKpInfo invoiceKpInfo(ElectronicInvoiceKpInfo info, NotifyUrlReq urlReq);

	// 红冲发票接口 对应的发票信息
	public ElectronicInvoiceKpInfo negativeInfo(ElectronicInvoiceKpInfo info, NegativeInvoice urlReq);

	// 根据code和category查询字典中发票类型的id
	public Long invoiceType(String code);

	// 根据code和category查询字典中发票状态的id
	public Long invoiceStatus(String code);
}
